package com.ruoyi.face.service;

import com.ruoyi.face.domain.*;
import com.ruoyi.yz.domain.YzMember;

import java.util.List;

public interface FaceDevice {

    /**
     * 设备登录
     */
    void doLogin();

    void updateDeviceHost(String host);

    /**
     * 创建人员信息
     */
    void addMember(Member member);

    /**
     * 获取指定id的人员信息
     */
    Member getMemberById(Long id);

    /**
     * 设置指定id的人员信息
     */
    void updateMemberById(Member member);

    /**
     * 删除指定id的人员信息
     */
    void deleteMemberById(Long id);

    /**
     * 批量删除人员信息
     *
     * @return
     */
    boolean deleteMemberByIds(List<Long> ids);

    /**
     * 条件查询人员信息
     *
     * @param queryCondition
     * @return
     */
    QueryResult<Member> queryMember(QueryCondition queryCondition);

    /**
     * 设置第三方服务器推送配置
     * @param subscribe
     */
    void setSubscribePush(SubScribe subscribe);

    boolean isLogin();

    void status();

    /**
     * 设置语音池
     */
    void setVoicePool(Voices voices);

    /**
     * 设置自定义语音信息
     */
    void setCustomizeVoice(CustomizeVoices customizeVoice);
}
